// P21Diffractor.h: interface for the P21Diffractor class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_P21DIFFRACTOR_H__07C6EF49_67D7_11D1_93D2_006097737B41__INCLUDED_)
#define AFX_P21DIFFRACTOR_H__07C6EF49_67D7_11D1_93D2_006097737B41__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

#include "Diffractor.h"

class P21Diffractor : public Diffractor  
{
public:
	P21Diffractor(char *DiffractorFile, Position *W1, Position *W2, Position *W3, char **atomLabel, int nAtom);
	virtual ~P21Diffractor();
	void    TransformDerivatives(double *IDerivative, 
								 Position *XDerivative);

private:	
	void	 FourierTransform(Position *XValues);
	double   *a1,*a2,*a3,*b1,*b2,*b3;
	bool	 *Case;

	Position *AP;
	};

#endif // !defined(AFX_P21DIFFRACTOR_H__07C6EF49_67D7_11D1_93D2_006097737B41__INCLUDED_)
